#include "pagepisbreakertest.h"
#include "ui_pagepisbreakertest.h"

PagePISBreakerTest::PagePISBreakerTest(QWidget *parent) :
    QWidget(parent),
    ui(new Ui::PagePISBreakerTest)
{
    ui->setupUi(this);
    setAutoFillBackground(true);  //设置自动填充
    QPalette palette = BKGCLR;
    setPalette(palette);
    pis_break_list_.append(ui->PIS_Break1);
    pis_break_list_.append(ui->PIS_Break2);
    pis_break_list_.append(ui->PIS_Break3);
    pis_break_list_.append(ui->PIS_Break4);
    pis_break_list_.append(ui->PIS_Break5);
    pis_break_list_.append(ui->PIS_Break6);
    pis_break_list_.append(ui->PIS_Break7);
    pis_break_list_.append(ui->PIS_Break8);
}

PagePISBreakerTest::~PagePISBreakerTest()
{
    delete ui;
}

void PagePISBreakerTest::on_ButtonReset_clicked()
{
    emit signal_ResetPISBreaker(true);
    ui->Button_Open1->setEnabled(false);
    ui->Button_Open2->setEnabled(false);
    ui->Button_Open3->setEnabled(false);
    ui->Button_Open4->setEnabled(false);
    ui->Button_Open5->setEnabled(false);
    ui->Button_Open6->setEnabled(false);
    ui->Button_Open7->setEnabled(false);
    ui->Button_Open8->setEnabled(false);
    ui->ButtonReset->setEnabled(false);
    QTimer::singleShot(3000,this,[=](){
        emit signal_ResetPISBreaker(false);
        ui->Button_Open1->setEnabled(true);
        ui->Button_Open2->setEnabled(true);
        ui->Button_Open3->setEnabled(true);
        ui->Button_Open4->setEnabled(true);
        ui->Button_Open5->setEnabled(true);
        ui->Button_Open6->setEnabled(true);
        ui->Button_Open7->setEnabled(true);
        ui->Button_Open8->setEnabled(true);
        ui->ButtonReset->setEnabled(true);
    });
}

void PagePISBreakerTest::on_Button_Open1_clicked()
{
    emit signal_OpenPISBreaker(0,true);
    ui->Button_Open1->setEnabled(false);
    ui->Button_Open2->setEnabled(false);
    ui->Button_Open3->setEnabled(false);
    ui->Button_Open4->setEnabled(false);
    ui->Button_Open5->setEnabled(false);
    ui->Button_Open6->setEnabled(false);
    ui->Button_Open7->setEnabled(false);
    ui->Button_Open8->setEnabled(false);
    ui->ButtonReset->setEnabled(false);
    QTimer::singleShot(3000,this,[=](){
        emit signal_OpenPISBreaker(0,false);
        ui->Button_Open1->setEnabled(true);
        ui->Button_Open2->setEnabled(true);
        ui->Button_Open3->setEnabled(true);
        ui->Button_Open4->setEnabled(true);
        ui->Button_Open5->setEnabled(true);
        ui->Button_Open6->setEnabled(true);
        ui->Button_Open7->setEnabled(true);
        ui->Button_Open8->setEnabled(true);
        ui->ButtonReset->setEnabled(true);
        ui->ButtonReset->setEnabled(true);
    });
}

void PagePISBreakerTest::on_Button_Open2_clicked()
{
    emit signal_OpenPISBreaker(1,true);
    ui->Button_Open1->setEnabled(false);
    ui->Button_Open2->setEnabled(false);
    ui->Button_Open3->setEnabled(false);
    ui->Button_Open4->setEnabled(false);
    ui->Button_Open5->setEnabled(false);
    ui->Button_Open6->setEnabled(false);
    ui->Button_Open7->setEnabled(false);
    ui->Button_Open8->setEnabled(false);
    ui->ButtonReset->setEnabled(false);
    QTimer::singleShot(3000,this,[=](){
        emit signal_OpenPISBreaker(1,false);
        ui->Button_Open1->setEnabled(true);
        ui->Button_Open2->setEnabled(true);
        ui->Button_Open3->setEnabled(true);
        ui->Button_Open4->setEnabled(true);
        ui->Button_Open5->setEnabled(true);
        ui->Button_Open6->setEnabled(true);
        ui->Button_Open7->setEnabled(true);
        ui->Button_Open8->setEnabled(true);
        ui->ButtonReset->setEnabled(true);
        ui->ButtonReset->setEnabled(true);
    });
}

void PagePISBreakerTest::on_Button_Open3_clicked()
{
    emit signal_OpenPISBreaker(2,true);
    ui->Button_Open1->setEnabled(false);
    ui->Button_Open2->setEnabled(false);
    ui->Button_Open3->setEnabled(false);
    ui->Button_Open4->setEnabled(false);
    ui->Button_Open5->setEnabled(false);
    ui->Button_Open6->setEnabled(false);
    ui->Button_Open7->setEnabled(false);
    ui->Button_Open8->setEnabled(false);
    ui->ButtonReset->setEnabled(false);
    QTimer::singleShot(3000,this,[=](){
        emit signal_OpenPISBreaker(2,false);
        ui->Button_Open1->setEnabled(true);
        ui->Button_Open2->setEnabled(true);
        ui->Button_Open3->setEnabled(true);
        ui->Button_Open4->setEnabled(true);
        ui->Button_Open5->setEnabled(true);
        ui->Button_Open6->setEnabled(true);
        ui->Button_Open7->setEnabled(true);
        ui->Button_Open8->setEnabled(true);
        ui->ButtonReset->setEnabled(true);
        ui->ButtonReset->setEnabled(true);
    });
}

void PagePISBreakerTest::on_Button_Open4_clicked()
{
    emit signal_OpenPISBreaker(3,true);
    ui->Button_Open1->setEnabled(false);
    ui->Button_Open2->setEnabled(false);
    ui->Button_Open3->setEnabled(false);
    ui->Button_Open4->setEnabled(false);
    ui->Button_Open5->setEnabled(false);
    ui->Button_Open6->setEnabled(false);
    ui->Button_Open7->setEnabled(false);
    ui->Button_Open8->setEnabled(false);
    ui->ButtonReset->setEnabled(false);
    QTimer::singleShot(3000,this,[=](){
        emit signal_OpenPISBreaker(3,false);
        ui->Button_Open1->setEnabled(true);
        ui->Button_Open2->setEnabled(true);
        ui->Button_Open3->setEnabled(true);
        ui->Button_Open4->setEnabled(true);
        ui->Button_Open5->setEnabled(true);
        ui->Button_Open6->setEnabled(true);
        ui->Button_Open7->setEnabled(true);
        ui->Button_Open8->setEnabled(true);
        ui->ButtonReset->setEnabled(true);
        ui->ButtonReset->setEnabled(true);
    });
}

void PagePISBreakerTest::on_Button_Open5_clicked()
{
    emit signal_OpenPISBreaker(4,true);
    ui->Button_Open1->setEnabled(false);
    ui->Button_Open2->setEnabled(false);
    ui->Button_Open3->setEnabled(false);
    ui->Button_Open4->setEnabled(false);
    ui->Button_Open5->setEnabled(false);
    ui->Button_Open6->setEnabled(false);
    ui->Button_Open7->setEnabled(false);
    ui->Button_Open8->setEnabled(false);
    ui->ButtonReset->setEnabled(false);
    QTimer::singleShot(3000,this,[=](){
        emit signal_OpenPISBreaker(4,false);
        ui->Button_Open1->setEnabled(true);
        ui->Button_Open2->setEnabled(true);
        ui->Button_Open3->setEnabled(true);
        ui->Button_Open4->setEnabled(true);
        ui->Button_Open5->setEnabled(true);
        ui->Button_Open6->setEnabled(true);
        ui->Button_Open7->setEnabled(true);
        ui->Button_Open8->setEnabled(true);
        ui->ButtonReset->setEnabled(true);
        ui->ButtonReset->setEnabled(true);
    });
}

void PagePISBreakerTest::on_Button_Open6_clicked()
{
    emit signal_OpenPISBreaker(5,true);
    ui->Button_Open1->setEnabled(false);
    ui->Button_Open2->setEnabled(false);
    ui->Button_Open3->setEnabled(false);
    ui->Button_Open4->setEnabled(false);
    ui->Button_Open5->setEnabled(false);
    ui->Button_Open6->setEnabled(false);
    ui->Button_Open7->setEnabled(false);
    ui->Button_Open8->setEnabled(false);
    ui->ButtonReset->setEnabled(false);
    QTimer::singleShot(3000,this,[=](){
        emit signal_OpenPISBreaker(5,false);
        ui->Button_Open1->setEnabled(true);
        ui->Button_Open2->setEnabled(true);
        ui->Button_Open3->setEnabled(true);
        ui->Button_Open4->setEnabled(true);
        ui->Button_Open5->setEnabled(true);
        ui->Button_Open6->setEnabled(true);
        ui->Button_Open7->setEnabled(true);
        ui->Button_Open8->setEnabled(true);
        ui->ButtonReset->setEnabled(true);
        ui->ButtonReset->setEnabled(true);
    });
}

void PagePISBreakerTest::on_Button_Open7_clicked()
{
    emit signal_OpenPISBreaker(6,true);
    ui->Button_Open1->setEnabled(false);
    ui->Button_Open2->setEnabled(false);
    ui->Button_Open3->setEnabled(false);
    ui->Button_Open4->setEnabled(false);
    ui->Button_Open5->setEnabled(false);
    ui->Button_Open6->setEnabled(false);
    ui->Button_Open7->setEnabled(false);
    ui->Button_Open8->setEnabled(false);
    ui->ButtonReset->setEnabled(false);
    QTimer::singleShot(3000,this,[=](){
        emit signal_OpenPISBreaker(6,false);
        ui->Button_Open1->setEnabled(true);
        ui->Button_Open2->setEnabled(true);
        ui->Button_Open3->setEnabled(true);
        ui->Button_Open4->setEnabled(true);
        ui->Button_Open5->setEnabled(true);
        ui->Button_Open6->setEnabled(true);
        ui->Button_Open7->setEnabled(true);
        ui->Button_Open8->setEnabled(true);
        ui->ButtonReset->setEnabled(true);
        ui->ButtonReset->setEnabled(true);
    });
}

void PagePISBreakerTest::on_Button_Open8_clicked()
{
    emit signal_OpenPISBreaker(7,true);
    ui->Button_Open1->setEnabled(false);
    ui->Button_Open2->setEnabled(false);
    ui->Button_Open3->setEnabled(false);
    ui->Button_Open4->setEnabled(false);
    ui->Button_Open5->setEnabled(false);
    ui->Button_Open6->setEnabled(false);
    ui->Button_Open7->setEnabled(false);
    ui->Button_Open8->setEnabled(false);
    ui->ButtonReset->setEnabled(false);
    QTimer::singleShot(3000,this,[=](){
        emit signal_OpenPISBreaker(7,false);
        ui->Button_Open1->setEnabled(true);
        ui->Button_Open2->setEnabled(true);
        ui->Button_Open3->setEnabled(true);
        ui->Button_Open4->setEnabled(true);
        ui->Button_Open5->setEnabled(true);
        ui->Button_Open6->setEnabled(true);
        ui->Button_Open7->setEnabled(true);
        ui->Button_Open8->setEnabled(true);
        ui->ButtonReset->setEnabled(true);
        ui->ButtonReset->setEnabled(true);
    });
}

void PagePISBreakerTest::on_Btn_Return_clicked()
{
    emit returnToMaintMenu();
}

void PagePISBreakerTest::setPISBreakStat(int index,bool stat)
{
    if(index < 0 || index >= pis_break_list_.length())
        return;
    if(stat)
        pis_break_list_[index]->setStyleSheet("QLabel{background-color: rgb(255,0,0);font:20px 'Arial';color:black;}");
    else
        pis_break_list_[index]->setStyleSheet("QLabel{background-color: rgb(0,255,0);font:20px 'Arial';color:black;}");
}
